package com.itchen.headline.dao;

import com.itchen.headline.pojo.NewsHeadline;
import com.itchen.headline.pojo.vo.HeadlineDetailVo;
import com.itchen.headline.pojo.vo.HeadlinePageVo;
import com.itchen.headline.pojo.vo.HeadlineQueryVo;

import java.util.List;

public interface NewsHeadLineDao {

    /**
     * 查询每条新闻数据表单的数据库操作
     * @param headlineQueryVo
     * @return
     */
    List<HeadlinePageVo> findPageList(HeadlineQueryVo headlineQueryVo);

    /**
     * 查询满足条件记录数的数据库操作
     * @param headlineQueryVo
     * @return
     */
    int findPageCount(HeadlineQueryVo headlineQueryVo);


    /**
     * 修改浏览量的数据库操作
     * @param hid
     * @return
     */
    int incrPageViews(int hid);

    /**
     * 查询详情的数据库操作
     * @param hid
     * @return
     */
    HeadlineDetailVo findHeadlineDetail(int hid);

    /**
     * 增加新闻的数据库操作
     * @param newsHeadline
     * @return
     */
    int addNewsHeadline(NewsHeadline newsHeadline);

    /**
     * 修改新闻回显的数据库操作
     * @param hid
     * @return
     */
    NewsHeadline findHeadlineByHid(int hid);

    /**
     * 修改新闻的数据库操作
     * @param newsHeadline
     * @return
     */
    int update(NewsHeadline newsHeadline);

    /**
     * 删除新闻的数据库操作
     * @param hid
     * @return
     */
    int removeByHid(int hid);
}